home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Magazine / Online / httpproxy / Install < prev    next >
Text File  |  1996-08-20  |  80KB  |  1,271 lines

  1. ;/*(( "Header" */
  2. ;-----------------------------------------------------------------------
  3. ;
  4. ; Installer script for HttpProxy
  5. ;
  6. ; Copyright 1995-96 Matthias Hopf
  7. ; All rights reserved.
  8. ;
  9. ; $VER: HttpProxy-Install 1.0 (08.May.96)
  10. ;
  11. ; $Id: Install,v 0.5 1996/08/20 17:46:12 mshopf Exp mshopf $
  12. ;
  13. ;-----------------------------------------------------------------------
  14. ;/*)) */
  15. ;/*(( "Startup settings" */
  16.  
  17. (onerror (CleanUp))
  18. ;
  19. ; ---------- Configuration settings ----------
  20. ;
  21. (set _min-instvers 2752512)
  22. (run "c:version >env:_install_httpproxy bin/httpproxy.000" (safe))
  23. (set _current-version   (getenv "_install_httpproxy"))
  24. (set _current-cpu       (database "cpu"))
  25. (if (exists "sys:utilities/multiview")
  26.     (set _guide-viewer "sys:utilities/multiview")
  27.     (if (exists "sys:utilities/amigaguide")
  28.     (set _guide-viewer "sys:utilities/amigaguide")
  29.     (if (exists "sys:utilities/more")
  30.         (set _guide-viewer "sys:utilities/more")
  31.         (set _guide-viewer "type <>con:")
  32. )   )   )
  33. (run "Sys:System/RexxMast" (safe))                       ; check whether it is already running
  34. (if (>= @installer-version 2752518)                      ; V42.6 and greater are proportional
  35.     (set _ch-start "p")
  36.     (set _ch-start "")
  37. )
  38. (set _default-proxyport 8080)
  39.  
  40. ;/*)) */
  41. ;/*(( "English (default)" */
  42. ;
  43. ; ** English **
  44. ;
  45.  
  46. (set #testing            "I´m testing your %s environment - please wait...\nPlease ignore all syslog warnings.")
  47. (set #msg-wait           "Please wait...")
  48. (set #installing         "Installing %s ...")
  49. (set #deinstalling       "Removing old installation for %s...")
  50. (set #deinstallrexx      "I´m calling the ARexx-script for the deinstallation of an old version of HttpProxy in %s.\nBefore that backup files will be generated.")
  51. (set #deinstallrexx-help "All lines inbetween \";BEGIN HTTPPROXY\" and \";END HTTPPROXY\" or inbetween \"/*BEGIN HTTPPROXY*/\" and \"/*END HTTPPROXY*/\" will be removed.")
  52. (set #addentry           "Some lines have to be added to ´%s´ for HttpProxy:\n\n%s")
  53. (set #delete             "The file/directory ´%s´ will be deleted.")
  54. (set #delete-prompt      "The following files will be deleted:")
  55. (set #delete-help        "The files/directories are only needed for HttpProxy (while deinstalling) or for an old version (while installing).")
  56. (set #welcome            (cat _current-version " Installation Script"))
  57. (set #backup-prompt      "A backup file will be generated. This file is needed for the following steps!")
  58. (set #msg-infile         "\n\nThis concerns the following files:\n")
  59. (set #msg-ok             "Go on")
  60. (set #msg-skip           "Skip this")
  61. (set #interrupt-help     "When you skip this test, you cannot be sure everything will work fine after installation.")
  62. (set #interruptable      "\n\nBecause you selected expert mode you may skip the test.")
  63. (set #starttcpip         "Please start your TCP/IP-stack \"%s\".")
  64. (set #starttcpip-help    (cat "The installation script wants to check some parts of your TCP/IP configuration which are set up wrong very often. There is a great chance that you would never notice these wrong settings without using active "
  65.                   "servers like HttpProxy."))
  66. (set #notexfile-prompt   "The specified file does not yet exist. Please select another file or simply enter its name again when the file should be generated.")
  67. (set #unknown-file       "_unknown_-_please_specify_")
  68.  
  69. (set #install-prompt     (cat #welcome "\n\nShould HttpProxy be installed or deinstalled?"))
  70. (set #install-help       "While installing HttpProxy an old version will be removed automatically.\nWhen the old installation was done by hand, the installation script cannot remove it. You will have to do that yourself.")
  71. (set #install-install    (cat _ch-start "Install"))
  72. (set #install-deinstall  "Deinstall")
  73. (set #install-browser    "Just configure WWW browsers")
  74.  
  75. (set #novice-prompt      "In beginner mode your AmiTCP- or INet/AS225/Surfer-installation may be altered automatically (only some minor changes).\nWhen you do not want this to happen, start the script again, but in intermediate mode.")
  76. (set #msg-deinstall      "Almost all text parts used for the deinstallation process are the same as for the installation process.\nEven when it is not mentioned any more, you are in the deinstallation phase.")
  77. (set #whichtcp-prompt    "Which TCP/IP stack should HttpProxy be installed for?")
  78. (set #whichtcp-help      "The executables contain handlers for both stacks, but the installation process is slightly different.")
  79.  
  80. (set #progdestdir-prompt "Please specify the binary directory for HttpProxy.\nNo new directory will be created.")
  81. (set #progdestdir-help   "Standard for AmiTCP is ´AmiTCP:bin´, standard for INet/AS225/Surfer is ´INet:c´.\nThe directory should be in the path, when you wish to call httpfetch by hand. HttpProxy does not need to be in the path itself, though.")
  82. (set #copyresolve-prompt "The old httpresolve executable is saved to old_httpresolve for later cache conversion.")
  83. (set #copyresolve-help   "")
  84. (set #progcpu-prompt     "For which CPU should the programms be installed?")
  85. (set #deleteold-prompt   "When an old files of HttpProxy exists, they will now be deleted.")
  86. (set #deleteold-help     "The binaries httpproxy, httpproxy.db, httpdelete and httpfetch will be deleted, so that the new files can be renamed.")
  87. (set #docdestdir-prompt  "Please specify the documentation directory for HttpProxy.")
  88. (set #docdestdir-help    "Standard for TCP is ´AmiTCP:help´, standard for INet/AS225/Surfer is ´Help:´.")
  89.  
  90. (set #cachedir-prompt    "Please specify the cache directory.")
  91. (set #cachedir-help      "HttpProxy will save all requested URLs on your harddisk in the specified directory.\nThis directory is not to be specified as a temporary or cache directory for other programs!")
  92. (set #msg-checkcache     "Checking cache consistency...")
  93. (set #danger-cache       (cat "The directory already exists, but does not seem to be an old HttpProxy cache directory.\nDo you realy want to use this directory?\nData in this directory is NOT save! It may be altered or deleted by HttpProxy.\n"
  94.                   "No file conversion will be done."))
  95. (set #updatecache-prompt "The cache directory will up converted to a new cache version. This can take some time, depending on your cache size.\n\nShould the old cache directory be deleted in the progress?")
  96. (set #updatecache-help   (cat "The updateCache.rexx ARexx-script will scan the cache directory and convert all files to the new cache format.\nWhen space is limited on the device the cache resides, you may want to delete the old cache in the "
  97.                   "progress. When you have plenty of harddisk space available you may want to keep the old cache for security."))
  98. (set #updatecache-novice "The cache directory will up converted to a new cache version. This can take some time, depending on your cache size...")
  99. (set #updaterexx-prompt  (cat "I´m calling the ARexx-script for the cache conversion.\nOutput will be sent to another console window. Please close this window after the conversion process.\nYou can continue installation here while the "
  100.                   "conversion process is going on. Just be sure to not start HttpProxy before the conversion is completed."))
  101. (set #copymessages-prompt "The following message files will be copied.")
  102. (set #copymessages-help  "These message files are sent by HttpProxy for varying purposes.")
  103. (set #deletecache-prompt "The cache directory will be deleted.")
  104. (set #deletecache-help   "Do not delete the cache when you have another use for it or you wish to install HttpProxy again.")
  105. (set #msg-nocachedel     "The specified cache directory does not exist and is thus not deleted.")
  106.  
  107. (set #update-prompt      "HttpProxy seems to be installed by hand already. Shall I continue with installation though?")
  108. (set #update-help        "You seem to have installed already an old version of HttpProxy.\nThe installation script is not capable of deinstalling these. Thus you will have to alter the files manually afterwards.")
  109. (set #doconfig-prompt    "You already configured HttpProxy. Possible options haven´t changed since the last installation.\nDo you want to reconfigure HttpProxy?")
  110. (set #doconfig-help      "Either calling options haven´t changed since your last version or you already installed this HttpProxy version.")
  111.  
  112. (set #configtype-prompt  "What is your TCP/IP-configuration like?")
  113. (set #configtype-online  (cat _ch-start "I always dial in automatically on TCP/IP startup (not recommended)."))
  114. (set #configtype-both    "I have two different TCP/IP startup scripts, one for offline and one for online.")
  115. (set #configtype-offline "I start TCP/IP offline and dial in / hang up by two additional scripts afterwards (recommended).")
  116. (set #configtype-all     "All of the above with multiple scripts (expert mode only).")
  117. (set #configtype-help    (cat "HttpProxy has to be started in different modes when you are online or offline after starting the TCP/IP-stack. First, behavour of HttpProxy is different in both cases, second, HttpProxy has to get queued pages when "
  118.                   "you are online.\nWhen you go online automatically when starting your stack, you will not be able to surf through the web offline, execept when you have multiple configurations for on- and offline mode."))
  119.  
  120. (set #stoptcpip-prompt   "Please stop your TCP/IP-stack now. All checks are done. Another check has to be done, but your TCP/IP-stack has to be *restarted* for this test!")
  121. (set #stoptcpip-help     "Most configuration options of the TCP/IP-stacks are only read in on startup.")
  122. (set #msg-nochange       "Checks are completed successfully.\n\nResults:\n\n")
  123. (set #msg-applychange    "Checks have encountered, that your configuration has to be changed. Backup files will be generated before.\n\nResults:\n\n")
  124. (set #applychange-help   "HttpProxy is a local server and for this to function your TCP/IP-stack has to be able to contact itself. Because of memory reasons new configurations are badly configured sometimes.")
  125. (set #msg-changedfiles   "The following changes werde done to your configuration:\n\n")
  126. (set #msg-applyresults   "Results of the changes:\n\n")
  127.  
  128. (set #startup-prompt     "Which file is used for starting the TCP/IP-stack?")
  129. (set #offline-prompt     "Which file is used for starting the TCP/IP-stack offline?")
  130. (set #online-prompt      "Which file is used for starting the TCP/IP-stack online?")
  131. (set #startup-done       " Please enter an empty string when you are done.")
  132. (set #startup-help       (cat "You have to specify a file with which your TCP/IP-stack is started. In a standard installation you only have one file for this. The file has to be an AmigaDOS-script or an ARexx-Script.\nWhen "
  133.                   "you have multiple configurations (for online and offline for example), Httpproxy has to be started in each of these files with the according options."))
  134. (set #httpdel-prompt     "Should HttpDelete be started together with HttpProxy?")
  135. (set #httpdel-help       "HttpDelete searches your cache directory for old files and deletes them.\nWith this program the size of your cache directory can be kept reasonable.")
  136. (set #proxyopts-prompt   "Please enter your configuration whishes for HttpProxy. Press Help for option explanation.")
  137. (set #proxyopts-help     (cat "ONLINE:\nHttpproxy will be started in online modus. Only specify this, when the file is called while you are online.\n\nGET:\nHttpProxy queues requests for URLs which are not yet in the cache. With this option specified "
  138.                   "the URLs are fetched automatically as soon as you go online.\n\nUNREAD:\nNormally HttpProxy cancels connections for requested URLs when data transfer is interrupted. When this option is specified, HttpProxy continues "
  139.                   "getting the page for the cache.\n\nPROXY:\nWhen have knowledge of a proxy of your provider, it is usefull to start HttpProxy in the so-called proxyproxy mode. That means, HttpProxy only forwards all requests to the "
  140.                   "specified proxy. For more about that take a look at the documentation.\n\nLOG:\nWith this option the name of a logfile can be specified. All requests are logged into this logfile. You can use this for checking which "
  141.                   "URLs you already requested. The file has to be deleted manually from time to time.\n\nEXPIRE:\nThis option specifies the expire time. Any cached documents older than the given time are assumed to be invalid. For more "
  142.                   "information take a look into the documentation."))
  143. (set #expopts-prompt     "Please enter your extended configuration whishes for HttpProxy. Press Help for option explanation.")
  144. (set #expopts-help       (cat "PORT:\nWith this option the portnumber can be specified HttpProxy will listen on. Default is 8080.\n\nNUMREQ:\nThis number specifies the maximum number of simultanous active connections. Default is 16.\n\nMINNUMREQ:\n"
  145.                   "This number specifies the minimum number of connections available for interactive requests. The remaining connections may be used by HttpProxy for getting queued URLs.\n\nRELOAD:\nThis option specifies the maximum "
  146.                   "reload time. When the same document is fetched two times in a row inbetween ´reload´ seconds, this request is taken as a reload request. For more discussion see documentation, especially the FAQ.\n\nKEEPBAD:\nWhen "
  147.                   "HttpProxy encountered an error while fetching the document, it normally removes the new cache. With this option set it will keep the bad cache. Note that in this case any (valid) prior fetched cache is lost.\n\n"
  148.                   "PROXYLOCAL:\nIn general requests to the local host should not be cached when you run a server on your local host, too.\n\nNOQUEUE:\nStart HttpProxy in non-queuing mode. The mode can be changed by service URLs. Take "
  149.                   "a look at the documentation for more about that topic.\n\nNOHTTPPROXYPROXY:\nIf you do not want to use a proxyproxy for regular requests but want to use HttpProxy for FTP/WAIS/GOPHER/etc, too, you should set up a "
  150.                   "proxyproxy and use this option. Then all HTTP requests will not use the specified proxyproxy."))
  151.  
  152. (set #proxyproxy-prompt  "Please enter name and portnumber of the proxy of your provider.\nWARNING!\nThe given example address does *not* work!")
  153. (set #proxyproxy-help    (cat "In general your provider will tell you an URL like\n\"http://proxy.my.domain:8080/\"\nas  als proxy address. In this case please enter\n\"proxy.my.domain 8080\"\nWhen the URL contains no port number, please use the "
  154.                   "number \"80\"."))
  155. (set #proxylog-prompt    "Please specify where your logfile should be located.")
  156. (set #proxylog-help      "You will have to delete the logfile from time to time, because it will grow very fast.")
  157. (set #expiretime-prompt  "Please enter the number of days you after which you want to have cache files invalidated.")
  158. (set #expiretime-help    "This option specifies the expire time. Any cached documents older than the given time are assumed to be invalid. For more information take a look into the documentation.")
  159.  
  160. (set #proxyport-prompt   "Wich port should HttpProxy use for listening?")
  161. (set #proxyport-help     "Please enter the port number on which HttpProxy should receive requests. Default is 8080.\nThis number influences configuration of all used browsers.")
  162. (set #proxynumreq-prompt "How many requests should be served simuntanously at maximum?\nThe maximum number depends on the used TCP/IP-stack and is about 80.")
  163. (set #proxynumreq-help   "When you specify values greater than 80, it may be possible, that you have to reconfigure HttpProxy, when startup fails.")
  164. (set #proxyminnumreq-prompt "How many requests should be reserved for interactive requests?")
  165. (set #proxyminnumreq-help   "This number specifies the minimum number of connections available for interactive requests. The remaining connections may be used by HttpProxy for getting queued URLs.")
  166. (set #reloadtime-prompt  "Please enter the number of seconds inbetween two requests for the same document should be treated as a reload request.")
  167. (set #reloadtime-help    "When the same document is fetched two times in a row inbetween ´reload´ seconds, this request is taken as a reload request. For more discussion see documentation, especially the FAQ.")
  168.  
  169. (set #httpdelopts-prompt "Please enter your configuration whishes for HttpDelete. Press Help for option explanation.")
  170. (set #httpdelopts-help   (cat "LOG:\nHttpDelete can log which files and directories are deleted. This file has to be deleted manually from time to time, too.\n\nDELAY 5   (slow):\nWith ´delay´ the number of 1/50-seconds can be given, that HttpDelete "
  171.                   "will wait after each partially scan before continuing. With this option specified scanning time is increased, but harddisk availability is increased.\n\nPRIORITY -1   (background):\n´priority´ specifies the process "
  172.                   "priority. Without this option process priority will not be changed. When HttpDelete is started in the background and the processor is not used continously, it is wise to use this option.\n\nTIME:\nThis option specifies "
  173.                   "the delete time. Any cached documents older than the given time are deleted on invocation of HttpDelete."))
  174. (set #httpdellog-prompt  #proxylog-prompt)
  175. (set #httpdellog-help    #proxylog-help)
  176. (set #httpdeltime-prompt "Please enter the number of days you after which you want to have cache files deleted.")
  177. (set #httpdeltime-help   "This option specifies the delete time. Any cached documents older than the given time are deleted on invocation of HttpDelete.")
  178.  
  179. (set #dialin-prompt      "Which file is called when you want to go online, e.g. call your provider?")
  180. (set #dialin-help        (cat "HttpProxy has to be told when you get online. First, behavour of HttpProxy is different in both cases, second, HttpProxy has to get queued pages when you are online. The file has to be an AmigaDOS-script or an "
  181.                   "ARexx-Script. When you go online automatically on startup of the TCP/IP-stack you do not need to specify a script here. You will *have* to start HttpProxy in ONLINE-mode in this case, though."))
  182. (set #hangup-prompt      "Which file is called when you want to go offline, e.g. hang up your modem?")
  183. (set #hangup-help        (cat "HttpProxy has to be told when you get offline. First, behavour of HttpProxy is different in both cases, second, HttpProxy has to requeued pages not fully received in order to get them when getting online again. The file "
  184.                   "has to be an AmigaDOS-script or an ARexx-Script. When you only go offline by stopping the TCP/IP-stack you do not need to specify a script here."))
  185.  
  186. (set #haveproxy-prompt   "Did you specify a proxyproxy on startup configuration of HttpProxy?")
  187. (set #haveproxy-help     "When you specified a proxyproxy, that is a proxy of your provider, HttpProxy has a bit more functionality.\nWhen you really do not know, what to say, click on ´no´.")
  188. (set #haveport-prompt    "Did you specify a port number on startup configuration of HttpProxy?")
  189. (set #haveport-help      "When you specified a port number other than the default 8080, it must be known for browser configuration.\nWhen you really do not know, what to say, click on ´no´.")
  190.  
  191. (set #browser-prompt     "Which web browser(s) do you use?")
  192. (set #browser-help       "Each browser you use has to be told, how to contact HttpProxy. Most steps have to be done manually, however.")
  193. (set #unknownconfig      "I´m sorry, but I don´t know anything about the configuration of %s.\nTry and search for a possibility to specify \"%s\" as HTTP-proxy.")
  194. (set #startbrowser       "Please start the browser ´%s´ now when it is not already running.")
  195. (set #menupageproxy      "Please open the menu \"%s\".\nSelect the cardfile \"%s\".\nEnter \"%s\" as %s and save the configuration.")
  196. (set #ibrowseconfig-prompt "When IBrowse ist asking you whether it should use your old proxy configuration, answer with yes.\nWhen you already clicked on the ´no´ gadget in IBrowser, click on ´no´ here, too.\n\nWas this question asked by IBrowse?")
  197. (set #ibrowseconfig-help (cat "IBrowse can import a proxy-configuration for AMosaic automatically, when no proxy is already specified. The installation script tries to automatically set up IBrowse that way.\nBy clicking on ´no´ you will get further "
  198.                   "information how to specify a proxy manually."))
  199. (set #lynxfile-prompt    "Where can your configuration file for Lynx be found?")
  200. (set #voyagerconfig-prompt "\n\nPlease check that the Http-proxy is active, too.")
  201. (set #saveconfig         "The configuration for ´%s´ will be saved on your harddisk.")
  202. (set #saveconfig-help    "Some environment variables will be copied from env: to envarc:.")
  203.  
  204. (set #error-notcp        "I did not find either an AmiTCP or an INet/AS225/Surfer installation.\nUse the expert mode to specify the TCP/IP system manually.")
  205. (set #error-notcache     "The directory already exists, but it does not seem to be a former HttpProxy cache directory.\nPlease use the expert mode to when you really want to use this directory.")
  206. (set #error-update       "HttpProxy seems to be installed manually already.\nIn beginner mode HttpProxy cannot be installed as long as the old installation is still there.")
  207. (set #error-notremoved   "The old configuration seems to be faulty!\nThe ARexx-script was not able to remove the old installation. This must be done manually and afterwards you may try the installation process again.")
  208. (set #error-tcpipconf    "Your TCP/IP-configuration is not usable for HttpProxy. You will have to call a TCP/IP-Guru for correction or get an other TCP/IP implementation. Installation will only be possible in expert mode!\n\nThe tests´ results follow.")
  209. (set #error-instvers     "Your installer is too old for this script. Please use at least V42.\nCurrent version while writing this script is V43.3, which is available from Aminet.")
  210.  
  211. ;/*)) */
  212. ;/*(( "Deutsch" */
  213. ;
  214. ; ---------- Language settings ----------
  215. ;
  216. ; ** Deutsch **
  217. ;
  218. (if (= @language "deutsch")
  219. (
  220.  
  221. (set #testing            "Ich teste die %s Umgebung - bitte warten...\nBitte alle Syslog Warnmeldungen ignorieren.")
  222. (set #msg-wait           "Bitte warten...")
  223. (set #installing         "Installiere %s ...")
  224. (set #deinstalling       "Entferne alte Installation für %s...")
  225. (set #deinstallrexx      "Rufe das ARexx-Script für die Deinstallation einer alten Version von HttpProxy in %s auf.\nVon den alten Files wird vorher ein Backup angelegt.")
  226. (set #deinstallrexx-help "Alle Zeilen zwischen \";BEGIN HTTPPROXY\" und \";END HTTPPROXY\" beziehungsweise zwischen \"/*BEGIN HTTPPROXY*/\" und \"/*END HTTPPROXY*/\" werden von dem ARexx-Script entfernt.")
  227. (set #addentry           "Es müssen zu ´%s´ einige Eintragungen für HttpProxy hinzugefügt werden:\n\n%s")
  228. (set #delete             "Es wird das File/Direktory ´%s´ gelöscht.")
  229. (set #delete-prompt      "Es werden die folgenden Files gelöscht:")
  230. (set #delete-help        "Die Files/Schubladen werden nur für HttpProxy (Deinstallation) bzw. für eine alte Version (Installation) benötigt.")
  231. (set #welcome            (cat _current-version " Installationsskript"))
  232. (set #backup-prompt      "Es wird ein Backup-File angelegt. Das Installations-Script braucht dieses File für die weiteren Schritte!")
  233. (set #msg-infile         "\n\nBetroffene Files:\n")
  234. (set #msg-ok             "Weiter")
  235. (set #msg-skip           "Überspringen")
  236. (set #interrupt-help     "Wenn sie den Test überspringen, können Sie nicht sicher sein, daß alles korrekt läuft.")
  237. (set #interruptable      "\n\nDa Sie den Experten-Modus gewählt haben, können Sie den Test auch überspringen.")
  238. (set #starttcpip         "Bitte starten Sie ihren TCP/IP-Stack \"%s\".")
  239. (set #starttcpip-help    "Das Installationsscript möchte einige Teile Ihrer TCP/IP-Konfiguration überprüfen, die standardmäßig oft nicht richtig gesetzt sind, aber die Fehler erst mit HttpProxy oder anderen lokal laufenden Serven bemerkt werden.")
  240. (set #notexfile-prompt   "Das angegebene File existiert nicht. Bitte wählen Sie ein existierendes oder geben Sie den Namen erneut ein, wenn das File neu generiert werden soll.")
  241. (set #unknown-file       "_unbekannt_-_bitte_angeben_")
  242.  
  243. (set #install-prompt     (cat #welcome "\n\nSoll HttpProxy installiert oder deinstalliert werden?"))
  244. (set #install-help       "Während einer Installation wird automatisch eine bereits vorhandene alte Installation entfernt.\nWurde die alte Installation von Hand durchgeführt, kann das Installer-Script sie leider nicht selbständig entfernen.")
  245. (set #install-install    (cat _ch-start "Installieren"))
  246. (set #install-deinstall  "Deinstallieren")
  247. (set #install-browser    "Nur Browser konfigurieren")
  248.  
  249. (set #novice-prompt      "Im Anfänger-Modus wird Ihre AmiTCP- oder INet/AS225/Surfer-Installation gegebenenfalls automatisch leicht verändert.\nWenn Sie das nicht wollen, starten Sie das Script bitte im Fortgeschrittenen-Modus.")
  250. (set #msg-deinstall      "Die für die Deinstallation verwendeten Texte decken sich zu Großteil mit den für die Installation verwendeten.\nSie befinden sich in der Deinstallationsphase, auch wenn die folgenden Texte Sie nicht darauf hinweisen.")
  251. (set #whichtcp-prompt    "Für welchen TCP/IP-Stack soll HttpProxy installiert werden?")
  252. (set #whichtcp-help      "Die Executables enthalten Handler für beide Stacks, aber die Installation verläuft unterschiedlich.")
  253.  
  254. (set #progdestdir-prompt "Bitte geben Sie die Schublade für die Programme an.\nEs wird kein weiteres Verzeichnis erstellt.")
  255. (set #progdestdir-help   (cat "Für AmiTCP wird HttpProxy normalerweise in ´AmiTCP:bin´ installiert, für INet/AS225/Surfer normalerweise in ´INet:c´.\nDas Verzeichnis sollte im Pfad vorhanden sein, wenn sie beabsichtigen, httpfetch auch von Hand "
  256.                   "aufzurufen. Für httpproxy selbst ist es nicht notwendig, das Verzeichnis im Pfad aufzunehmen."))
  257. (set #copyresolve-prompt "Das alte httpresolve Executable wird für die nachfolgende Cache-Konvertierung in old_httpresolve gespeichert.")
  258. (set #copyresolve-help   "")
  259. (set #progcpu-prompt     "Bitte geben Sie an, für welche CPU die Programme installiert werden sollen.")
  260. (set #deleteold-prompt   "Es werden ggf. vorhandene alte Programme gelöscht.")
  261. (set #deleteold-help     "Die Programme httpproxy, httpproxy.db, httpdelete und httpfetch im angegebenen Programmverzeichnis werden gelöscht, damit die neu installierten Programme umbenannt werden können.")
  262. (set #docdestdir-prompt  "Bitte geben Sie die Schublade für die Anleitung an.")
  263. (set #docdestdir-help    "Für AmiTCP wird die Anleitung normalerweise in ´AmiTCP:help´ installiert, für INet/AS225/Surfer normalerweise in ´Help:´.")
  264.  
  265. (set #cachedir-prompt    "Bitte geben Sie die Schublade für die Cache-Files an.")
  266. (set #cachedir-help      "HttpProxy speichert die angeforderten Seiten auf der Festplatte in dem angegebenen Direktory.\nDieses Directory darf nicht für andere Programme benutzt werden!")
  267. (set #msg-checkcache     "Überprüfe die Konsistenz des Cache-Direktories...")
  268. (set #danger-cache       (cat "Die Schublade existiert bereits, es scheint sich allerdings nicht um eine frühere Proxy-Schublade zu handeln.\nWollen Sie wircklich diese Schublade verwenden?\nDaten in dieser Schublade können durch HttpProxy verändert "
  269.                   "oder gelöscht werden.\nEs werden keine alten Cache-Files konvertiert."))
  270. (set #updatecache-prompt "Die Cache-Schublade wird zu einer neuen Version konvertiert. Dies kann je nach Größe Ihres Caches etwas Zeit in Anspruch nehmen.\n\nSoll das alte Cache-Directory während dieses Prozesses gelöscht werden?")
  271. (set #updatecache-help   (cat "Das updateCache.rexx ARexx-Script wird das gesamte Cache-Verzeichnis scannen und alle Dateien in das neue Cache-Format umwandeln.\nWenn Sie nicht genügend Speicherplatz auf der Festplatte mit dem Cache haben, sollte der "
  272.                   "alte Cache während der Konvertierung gelöscht werden. Wenn auf der Festplatte genügend Platz frei ist, können sie das alte Cache-Verzeichnis aus Sicherheitsgründen als Backup behalten."))
  273. (set #updatecache-novice "Die Cache-Schublade wird zu einer neuen Version konvertiert. Dies kann je nach Größe Ihres Caches etwas Zeit in Anspruch nehmen...")
  274. (set #updaterexx-prompt  (cat "Rufe das ARexx-Script für die Konvertierung des Caches auf.\nDie Ausgabe des Scripts wird in ein neues Konsolen-Fenster geschickt. Bitte schließen Sie das Fenster nach der Konvertierung.\nSie können mit der Installation "
  275.                   "hier fortfahren, während das Cache-Directory konvertiert wird. Stellen Sie nur sicher, daß HttpProxy nicht aufgerufen wird, bis die Konvertierung vollständig abgelaufen ist."))
  276. (set #copymessages-prompt "Die folgenden Nachrichtendateien werden kopiert.")
  277. (set #copymessages-help  "Diese Nachrichten werden von HttpProxy bei verschiedenen Anlässen geschickt.")
  278. (set #deletecache-prompt "Die Cache-Schublade wird gelöscht.")
  279. (set #deletecache-help   "Wenn Sie noch eine Verwendung für den Cache haben oder beabsichtigen, HttpProxy neu zu installieren, sollten Sie den Cache nicht löschen.")
  280. (set #msg-nocachedel     "Das angegebenen Cache-Direktory existiert nicht und wird daher nicht gelöscht.")
  281.  
  282. (set #update-prompt      "HttpProxy scheint schon von Hand installiert worden zu sein. Soll ich trotzdem mit der Installation fortfahren?")
  283. (set #update-help        "Sie scheinen eine ggf. alte Version von HttpProxy bereits von Hand installiert zu haben.\nDas Installer-Script kann diese nicht korrekt entfernen, so daß Sie die veränderten Files später nachbessern müssen.")
  284. (set #doconfig-prompt    "Sie haben HttpProxy bereits konfiguriert. Die Optionen haben sich im Wesentlichen nicht geändert.\nWollen Sie die Konfiguration erneut durchführen?")
  285. (set #doconfig-help      "Entweder haben sich die Aufrufoptionen seit ihrer letzten Konfiguration nicht wesentlich geändert oder Sie haben die neue Version von HttpProxy schon einmal konfiguriert.")
  286.  
  287. (set #configtype-prompt  "Wie sieht Ihre TCP/IP-Konfiguration aus?")
  288. (set #configtype-online  (cat _ch-start "Ich wähle mich immer ein, wenn ich TCP/IP starte (nicht empfohlen)."))
  289. (set #configtype-both    "Ich habe zwei verschiedene TCP/IP Start-Scripts, eines für offline und eines für online.")
  290. (set #configtype-offline "Ich starte TCP/IP offline und über zwei zusätzliche Scripts wähle ich mich ein / lege auf. (empfohlen)")
  291. (set #configtype-all     "Alle diese Möglichkeiten mit mehreren Scripten (Nur Experten-Modus).")
  292. (set #configtype-help    (cat "HttpProxy muß in unterschiedlichen Modes gestartet werden, je nachdem ob Sie beim Start des Stacks online sind. Zum einen ist das Verhalten von HttpProxy teilweise unterschiedlich, zum anderen muß HttpProxy gequeuete "
  293.                   "Seiten anfordern.\nWenn Sie beim Start des TCP/IP-Stacks automatisch online gehen, können Sie allerdings nicht offline surfen, es sei den, Sie haben mehrere Konfigurationen."))
  294.  
  295. (set #stoptcpip-prompt   "Bitte stoppen Sie Ihren TCP/IP-Stack. Die Überprüfung ist beendet. Es muß noch eine weitere Überprüfung stattfinden, aber der TCP/IP-Stack muß dazu unbedingt neu gestartet werden!")
  296. (set #stoptcpip-help     "Die meisten Konfigurationsoptionen werden nur beim Start des Stacks neu eingelesen.")
  297. (set #msg-nochange       "Die Tests sind erfolgreich durchgelaufen.\n\nDie Ergebnisse:\n\n")
  298. (set #msg-applychange    "Die Tests haben ergeben, daß Ihre Konfiguration geändert werden muß. Von den alten Files werden Backups angelegt.\n\nTestergebnisse:\n\n")
  299. (set #applychange-help   "HttpProxy ist ein lokaler Server und deshalb muß Ihr TCP/IP-Stack in der Lage sein, Verbindungen zu sich selber herzustellen. Aus Speicherplatzgründen sind neuere Konfigurationen hier oft nachlässig.")
  300. (set #msg-changedfiles   "Die folgenden Änderungen an Ihrer TCP/IP-Konfiguration wurden vorgenommen:\n\n")
  301. (set #msg-applyresults   "Ergebnisse der Änderungen:\n\n")
  302.  
  303. (set #startup-prompt     "Welches File wird benutzt, um den TCP/IP-Stack zu starten?")
  304. (set #offline-prompt     "Welches File wird benutzt, um den TCP/IP-Stack im Offline-Modus zu starten?")
  305. (set #online-prompt      "Welches File wird benutzt, um den TCP/IP-Stack im Online-Modus zu starten?")
  306. (set #startup-done       " Bitte geben Sie eine leeren String ein, wenn Sie kein weiteres File angeben möchten.")
  307. (set #startup-help       (cat "Sie müssen ein File angeben, mit dem der TCP/IP-Stack gestartet wird. In einer Standard-Installation besitzen Sie nur ein File zu diesem Zweck. Das File muß entweder ein AmigaDOS-Script oder ein ARexx-Script sein.\nWenn "
  308.                   " Sie mehrere Konfigurationen zum Beispiel für Online und Offline verwenden, muß Httpproxy in jedem dieser Files mit den entsprechenden Optionen gestartet werden."))
  309. (set #httpdel-prompt     "Soll in dem File zusammen mit httpproxy gleichzeitig HttpDelete gestartet werden?")
  310. (set #httpdel-help       "HttpDelete durchsucht das Cache-Verzeichnis auf alte Dateien und löscht diese entsprechend.\nMit diesem Programm kann die Größe des Cache-Direktories in vernünftigen Größen gehalten werden.")
  311. (set #proxyopts-prompt   "Bitte geben Sie Ihre Konfigurationswünsche für HttpProxy ein. Die Optionen sind in der Hilfe erklärt.")
  312. (set #proxyopts-help     (cat "ONLINE:\nHttpproxy wird im Online-Modus gestartet. Nur angeben, wenn das File aufgerufen wird, während sie online sind.\n\nGET:\nHttpProxy speichert Anfragen für Seiten, die nicht im Cache sind. Mit dieser Option werden "
  313.                   "die Seiten automatisch angefordert, sobald sie online gehen.\n\nUNREAD:\nNormalerweise unterbricht HttpProxy die Verbindung für eine angeforderte Seite, wenn Sie den Datentransfer unterbrechen. Wird diese Option "
  314.                   "angegeben, versucht HttpProxy weiter, die Seite vollständig zu holen.\n\nPROXY:\nWenn Sie von ihrem Provider den Rechnernamen und den Port eines Proxies bekommen haben, ist es sinnvoll, HttpProxy im sogenannten Proxyproxy-"
  315.                   "Modus zu betreiben, d.h. HttpProxy leitet alle Anfragen an einen weiteren Proxy weiter. Näheres dazu in der Anleitung.\n\nLOG:\nWenn Sie später nachschlagen wollen, welche Seiten Sie bereits alles geholt haben, sollten "
  316.                   "Sie HttpProxy die Anfragen mitloggen lassen. Das Logfile müssen Sie allerdings von Zeit zu Zeit von Hand löschen.\n\nEXPIRE:\nMit dieser options spezifizieren Sie die maximale Zeit, in der ein gecachtes Dokument noch als "
  317.                   "gültig angesehen wird. Für mehr Information siehe Anleitung."))
  318. (set #expopts-prompt     "Bitte geben Sie die erweitereten Konfigurationswünsche für HttpProxy ein. Die Optionen sind in der Hilfe erklärt.")
  319. (set #expopts-help       (cat "PORT:\nMit dieser Option geben sie die Portnummer an, auf der HttpProxy die URLs der Browser entgegennehmen soll. Default ist 8080.\n\nNUMREQ:\nGibt die maximale Anzahl gleichzeitig aktiver Requests an. Default ist 16.\n\n"
  320.                   "MINNUMREQ:\nGibt die Anzahl der Verbindungen an, die für interaktives Arbeiten reserviert sind. Die restlichen verfügbaren Verbindungen benutzt HttpProxy gegebenenfalls, um gequeute URLs zu holen.\n\nRELOAD:\nMit dieser "
  321.                   "Option geben Sie die maximale Zeit an, inerhalb der ein Dokument zweimal geladen werden muß, damit HttpProxy dies als Reload-Request ansieht. Eine Diskussion dieser Methode finden Sie in der Anleitung (FAQ).\n\nKEEPBAD:\n"
  322.                   "Wenn ein Fehler während des Holens eines Dokuments auftritt, löscht HttpProxy normalerweise das gecachte File. Wenn diese Option gesetzt ist, behält HttpProxy den fehlerhaften und gegebenenfalls unvollständigen Cache. "
  323.                   "Beachten Sie bitte, daß dadurch ein gegebenenfalls vorhandenes altes (gültiges) Cachefile verloren geht.\n\nPROXYLOCAL:\nIm allgemeinen möchte man Requests, die den lokalen Rechner betreffen, nicht cachen, wenn man auf "
  324.                   "dem eigenen Rechner einen Server hat.\n\nNOQUEUE:\nStartet HttpProxy nicht im Queuing-Modus. Kein normaler Request wird gequeued. Der Modus kann jederzeit über Service-URLs geändert werden. In der Anleitung kann mehr über "
  325.                   "dieses Thema gefunden werden.\n\nNOHTTPPROXYPROXY:\nWenn HttpProxy nicht im Proxyproxy-Modus betrieben werden soll, aber trotzdem für FTP/GOPHER/WAIS/etc. benutzt werden soll, muß ein Proxyproxy spezifiziert werden und "
  326.                   "diese Option gesetzt sein. Alle HTTP-Requests werden dann nicht über den angegebenen Proxyproxy geleitet."))
  327.  
  328. (set #proxyproxy-prompt  "Bitte geben Sie den Namen und die Portnummer des Proxies Ihres Providers an.\nACHTUNG!\nDie angegebene Addresse funktioniert *nicht*!")
  329. (set #proxyproxy-help    (cat "Im Allgemeinen wird Ihnen Ihr Provider eine URL der Form\n\"http://proxy.my.domain:8080/\"\nals Proxyaddresse nennen. In diesem Fall geben Sie bitte\n\"proxy.my.domain 8080\" an. Falls die URL keine Portnummer enthält, "
  330.                   "benutzen Sie bitte die Nummer \"80\"."))
  331. (set #proxylog-prompt    "Bitte geben Sie an, wo Ihr Logfile angelegt werden soll.")
  332. (set #proxylog-help      "Sie müssen das Logfile von Zeit zu Zeit von Hand löschen, da es schnell sehr groß werden kann.")
  333. (set #expiretime-prompt  "Bitte geben Sie die Anzahl von Tagen an, nach denen ein Cache File als nicht mehr gültig angesehen werden soll.")
  334. (set #expiretime-help    "Für mehr Information siehe Anleitung.")
  335.  
  336. (set #proxyport-prompt   "Welchen Port soll HttpProxy öffnen?")
  337. (set #proxyport-help     "Bitte geben sie die Portnummer an, auf der HttpProxy die URLs der Browser entgegennehmen soll. Default ist 8080.\nDie Nummer des Ports beeinflußt die Konfiguration der verwendeten Browser.")
  338. (set #proxynumreq-prompt "Wieviele Requests sollen maximal gleichzeitig aktiv sein?\nDie maximal verwendbare Anzahl hängt vom verwendeten TCP/IP-Stack ab und liegt bei ungefähr 83.")
  339. (set #proxynumreq-help   "Wenn Sie Werte > 80 angeben, kann es sein, daß Sie die Konfiguration nochmal von Hand ändern müssen, wenn HttpProxy beim Start feststellt, daß NumReq zu groß ist.")
  340. (set #proxyminnumreq-prompt "Wieviele Requests sollen für interaktives Arbeit reserviert sein?")
  341. (set #proxyminnumreq-help   "Die restlichen verfügbaren Verbindungen benutzt HttpProxy gegebenenfalls, um gequeute URLs zu holen.")
  342. (set #reloadtime-prompt  "Bitte geben Sie die Anzahl von Sekunden an, innerhalb denen ein Dokument zweimal geladen werden muß, damit dies als Reload-Request angesehen wird.")
  343. (set #expiretime-help    "Für mehr Information siehe Anleitung (vor allem das FAQ).")
  344.  
  345. (set #httpdelopts-prompt "Bitte geben Sie Ihre Konfigurationswünsche für HttpDelete ein. Die Optionen sind in der Hilfe erklärt.")
  346. (set #httpdelopts-help   (cat "LOG:\nHttpDelete kann in einem Logfile festhalten, welche Files (und Direktories) gelöscht wurden. Dieses File muß ebenfalls von Zeit zu Zeit von Hand gelöscht werden.\n\nDELAY 5   (slow):\nMit ´delay´ kann angegeben "
  347.                   "werden, wieviele 1/50-Sekunden nach jedem Teilscan gewartet wird, bevor weitergesucht wird. Damit wird die Scanzeit erhöht, aber während des Scannens die Verfügbarkeit der Festplatte erhöht.\n\nPRIORITY -1   "
  348.                   "(background):\nMit ´priority´ wird die Prozess-Priority festgelegt. Ohne eine Angabe wird die Priorität nicht verändert. Wird HttpDelete im Hintergrund gestartet und der Prozessor ist nicht ständig belegt, ist es "
  349.                   "sinnvoll, HttpDelete mit niedriger Priorität laufen zu lassen.\n\nTIME:\nDiese Option gibt an, wie alt ein gecachtes Dokument sein muß, damit es von HttpDelete gelöscht wird."))
  350. (set #httpdellog-prompt  #proxylog-prompt)
  351. (set #httpdellog-help    #proxylog-help)
  352. (set #httpdeltime-prompt "Bitte geben Sie die Anzahl von Tagen an, nach denen ein Cache File gelöscht werden soll.")
  353. (set #httpdeltime-help   "Diese Option gibt an, wie alt ein gecachtes Dokument sein muß, damit es von HttpDelete gelöscht wird.")
  354.  
  355. (set #dialin-prompt      "Welches File rufen Sie auf, um online zu gehen, d.h. Ihren Provider anwählen?")
  356. (set #dialin-help        (cat "HttpProxy muß mitgeteilt werden, wenn Sie online sind. Zum einen ist das Verhalten von HttpProxy teilweise unterschiedlich, zum anderen muß HttpProxy gequeuete Seiten anfordern, sobald Sie online sind.\nDas Script, mit "
  357.                   "dem Sie online gehen, muß entweder ein AmigaDOS Script oder ein ARexx-Script sein.\nWenn Sie beim Start des TCP/IP-Stacks automatisch online gehen, brauchen Sie hier kein Script anzugeben, allerdings *müssen* Sie dann "
  358.                   "HttpProxy bereits im ONLINE-Modus starten!"))
  359. (set #hangup-prompt      "Welches File rufen Sie auf, um offline zu gehen, d.h. Ihr Modem auflegen lassen?")
  360. (set #hangup-help        (cat "HttpProxy muß mitgeteilt werden, wenn Sie offline sind. Zum einen ist das Verhalten von HttpProxy teilweise unterschiedlich, zum anderen muß HttpProxy noch nicht vollständig geholte Seiten abbrechen und queuen, damit Sie "
  361.                   "automatisch geholt werden, sobald Sie wieder online gehen.\nDas Script, mit dem Sie offline gehen, muß entweder ein AmigaDOS Script oder ein ARexx-Script sein.\nWenn Sie die Verbindung nur unterbrechen, indem Sie den "
  362.                   "TCP/IP-Stack stoppen, brauchen Sie kein Script angeben."))
  363.  
  364. (set #haveproxy-prompt   "Haben Sie beim Start von HttpProxy einen Proxyproxy konfiguriert?")
  365. (set #haveproxy-help     "Wenn Sie einen Proxyproxy, d.h. einen Proxy Ihres Providers angegeben haben, hat HttpProxy eine geringfügig höhere Funktionalität.\nWenn Sie sich nicht sicher sind, klicken Sie auf ´Nein´.")
  366. (set #haveport-prompt    "Haben Sie beim Start von HttpProxy eine Portnummer konfiguriert?")
  367. (set #haveport-help      "Wenn Sie eine Portnummer ungleich dem Default 8080 angegeben haben, muß diese für die Browser-Konfiguration bekannt sein.\nWenn Sie sich nicht sicher sind, klicken Sie auf ´Nein´.")
  368.  
  369. (set #browser-prompt     "Welche(n) Browser benutzen Sie?")
  370. (set #browser-help       "Jedem Browser, den Sie benutzen, muß mitgeteilt werden, wie er HttpProxy finden kann. Die meisten Schritte müssen allerdings von Hand eingegeben werden.")
  371. (set #unknownconfig      "Tut mir leid, aber mir ist nichts über die Konfiguration von %s bekannt.\nSuchen Sie nach einer Möglichkeit, \"%s\" als HTTP-Proxy anzugeben.")
  372. (set #startbrowser       "Bitte starten Sie nun den Browser ´%s´, falls er noch nicht läuft.")
  373. (set #menupageproxy      "Bitte öffnen Sie den Menüpunkt \"%s\".\nSelektieren Sie die Konfigurations-Seite \"%s\".\nGeben Sie \"%s\" unter %s ein und speichern Sie die Konfiguration.")
  374. (set #ibrowseconfig-prompt (cat "Wenn IBrowse Sie fragt, ob Sie den konfigurierten Proxy übernehmen wollen, antworten Sie mit ja.\nWenn Sie die Frage von IBrowse bereits versehentlich mit Nein beantwortet haben, klicken Sie jetzt bitte auf ´Nein´ bzw. "
  375.                 "´No´.\n\nWurde von IBrowse diese Frage gestellt?"))
  376. (set #ibrowseconfig-help (cat "IBrowse kann eine Proxy-Konfiguration für AMosaic automatisch übernehmen, wenn noch kein Proxy spezifiziert wurde. Das Installations-Script versucht auf diese Weise die Installation zu automatisieren.\nWenn Sie jetzt auf "
  377.                   "´Nein´ bzw. ´No´ klicken, erhalten Sie genauere Anweisungen für eine manuelle Konfiguration."))
  378. (set #lynxfile-prompt    "Wo ist das Konfigurationsfile für Lynx zu finden?")
  379. (set #voyagerconfig-prompt "\n\nStellen Sie zusätzlich sicher, daß der Http-Proxy aktiviert ist.")
  380. (set #saveconfig         "Die Einstellungen für ´%s´ werden auf der Festplatte gespeichert.")
  381. (set #saveconfig-help    "Es werden einige Konfigurations-Files von env: nach envarc: kopiert.")
  382.  
  383. (set #error-notcp        "Ich konnte weder eine AmiTCP noch eine INet/AS225/Surfer Installation entdecken.\nVerwenden sie den Experten-Modus, um das System von Hand anzugeben.")
  384. (set #error-notcache     "Die Schublade existiert bereits, es scheint sich allerdings nicht um eine frühere Proxy-Schublade zu handeln.\nBitte starten Sie das Script im Experten-Modus, wenn Sie diese Schublade verwenden wollen.")
  385. (set #error-update       "HttpProxy ist bereits von Hand installiert worden.\nIm Anfänger-Modus kann HttpProxy nicht installiert werden, solange die alte Installation noch vorhanden ist.")
  386. (set #error-notremoved   "Die bisherige Installation scheint fehlerhaft zu sein!\nDas ARexx-Script konnte die vorhergehende Installation nicht entfernen. Sie müssen das von Hand erledigen und das Installations-Script neu aufrufen.")
  387. (set #error-tcpipconf    (cat "Die TCP/IP-Konfiguration ist nicht für eine Benutzung von HttpProxy geeignet. Sie werden entweder einen TCP/IP-Guru zu Rate ziehen müssen oder sich einen anderen TCP/IP stack zulegen müssen. Die weitere Installation "
  388.                   "kann nur im Experten-Modus durchgeführt werden!\n\nEs folgen die Testergebnisse."))
  389. (set #error-instvers     "Ihr Installer ist zu alt. Dieses Script benötigt mindestens V42.\nDie aktuelle Version als das Script geschrieben wurde ist V43.3. Sie befindet sich im Aminet.")
  390. )
  391. )
  392.  
  393. ;/*)) */
  394. ;/*(( "Subroutines Setup" */
  395.  
  396. ;
  397. ; ---------- Procedures ----------
  398. ;
  399. ; ** CleanUp **
  400. ; clean up everything intermediate we possibly created...
  401. ;
  402. (procedure CleanUp
  403.  (run "c:delete env:_install_httpproxy env:_httpproxy_old_version t:_install_httpproxy_search env:_httpproxy_results env:_httpproxy_files" (safe))
  404.  (run "c:delete t:_httpproxy_testdir all quiet" (safe))
  405. )
  406.  
  407. ;
  408. ; ** AmiTCP/IP setup **
  409. ;
  410. (procedure CONFIGAMITCP
  411.  (set #TCPType "AmiTCP")
  412.  (set @default-dest "AmiTCP:bin/")
  413.  (set _default-doc  (if (exists "AmiTCP:help/") "AmiTCP:help/"
  414.               (if (exists "AmiTCP:doc/") "AmiTCP:doc/" "Help:")))
  415.  
  416.  (if (exists "AmiTCP:db/user-startnet")
  417.      (set _default-startup "AmiTCP:db/User-Startnet")
  418.      ((run "c:search >env:_install_httpproxy AmiTCP:bin/startnet pattern \"Execute#?AmiTCP:db/User-Startnet\"" (safe))
  419.       (if (or (= (getenv "_install_httpproxy") "") (not (exists "AmiTCP:bin/startnet")))
  420.       (set _default-startup "AmiTCP:bin/startnet")
  421.       (textfile (dest "AmiTCP:db/User-Startnet") (prompt #createusernet-prompt) (help #createusernet-help) (confirm))
  422.       (if (exists "AmiTCP:db/User-Startnet")
  423.           (set _default-startup "AmiTCP:db/User-Startnet")
  424.  )   ))   )
  425.  (set _default-online _default-startup)
  426.  (set _default-offline (if (exists "AmiTCP:bin/startoff") "AmiTCP:bin/startoff" (cat "AmiTCP:bin/" #unknown-file)))
  427.  (set _default-dir    "AmiTCP:bin/")
  428.  (set _default-dialin (if (exists "AmiTCP:bin/dialin") "AmiTCP:bin/dialin" (cat "AmiTCP:bin/" #unknown-file)))
  429.  (set _default-hangup (if (exists "AmiTCP:bin/hangup") "AmiTCP:bin/hangup"
  430.               (if (exists "AmiTCP:bin/hangup.rexx") "AmiTCP:bin/hangup.rexx" (cat "AmiTCP:bin/" #unknown-file))))
  431.  
  432.  (set _default-deinstall "AmiTCP:bin/startnet AmiTCP:db/User-Startnet AmiTCP:bin/dialin AmiTCP:bin/hangup AmiTCP:bin/hangup.rexx")
  433.  (set _pattern-deinstall "AmiTCP:(bin|db)/(startnet|User-Startnet|dialin|hangup|hangup.rexx)")
  434. )
  435.  
  436. ;
  437. ; ** INet/AS225/Surfer setup **
  438. ;
  439. (procedure CONFIGINET
  440.  (set #TCPType "INet")
  441.  (set @default-dest "INet:C/")
  442.  (set _default-doc "Help:")
  443.  (set _default-dir    "INet:C/")
  444.  (set _default-startup (if (exists "INet:NetStart") "INet:NetStart" (cat "INet:" #unknown-file)))
  445.  (set _default-online _default-startup)
  446.  (set _default-offline (cat "INet:" #unknown-file))
  447.  (set _default-startup (if (exists "INet:c/dialin") "INet:c/dialin" (cat "INet:" #unknown-file)))
  448.  (set _default-startup (if (exists "INet:c/hangup") "INet:c/hangup" (cat "INet:" #unknown-file)))
  449.  (set _default-deinstall "INet:NetStart INet:C/dialin INet:C/hangup")
  450.  (set _pattern-deinstall "INet:(%|c/)(NetStart|dialin|hangup)")
  451. )
  452.  
  453. ;/*)) */
  454. ;/*(( "Subroutines Checks" */
  455. ;
  456. ; ** Ask for existant ARexx port **
  457. ; needs portname in __br, prompt in __prompt, expert help in __help
  458. ; returns 0 in __do when check succeded, -1 when skipped (in expert mode)
  459. ;
  460. (procedure CHECKPORT
  461.  (set __do 0)
  462.  (while (= __do 0)
  463.     (working #msg-wait)
  464.     (set __do (= (run (cat "sys:rexxc/rx checkport.rexx " __br) (safe)) 0))
  465.     (if (not __do)
  466.         (if (= @user-level 2)
  467.         (set __do (- (askbool (prompt (cat __prompt #interruptable)) (help __help) (choices #msg-ok #msg-skip)) 1))
  468.         ((set __user @user-level) (user 1) (message __prompt) (user __user))
  469.     )   )
  470. ))
  471.  
  472. ;
  473. ; ** Ask for running Browser **
  474. ; needs browser name in __br
  475. ;
  476. (procedure CHECKBROWSER
  477.  (set __prompt (#startbrowser __br))
  478.  (set __help   #interrupt-help)
  479.  (CHECKPORT)
  480. )
  481.  
  482. ;
  483. ; ** General configuration check **
  484. ;
  485. ;!!!!!!!!!!!!!!! TCP/IP stop is not checked correctly at the moment...
  486. ;!!!!!!!!!!!!!!! expert mode single test correction selection not working at the moment...
  487. ;!!!!!!!!!!!!!!! testAmiTCP.rexx should work with different configurations, too
  488. ;!!!!!!!!!!!!!!! ask startup script (even multiple) instead of asking user to start net
  489. (procedure CHECKGENERAL
  490.  (set __res 0)
  491.  (set __fil "")
  492.  (run "c:delete env:_httpproxy_files quiet" (safe))
  493.  (textfile (dest "env:_httpproxy_files"))
  494.  (set __prompt (#starttcpip #TCPtype))
  495.  (set __help #starttcpip-help)
  496.  (CHECKPORT)
  497.  (if (= @user-level 0)
  498.      ((working (#testing #TCPtype))
  499.       (set __res (run (cat "sys:rexxc/rx test" #TCPtype ".rexx 15")))
  500.       (if (AND (<> __res 0) (< __res 10))
  501.       ((user 1) (message (#stoptcpip-prompt) (help #stoptcpip-help)) (user _user-level)
  502.        (CHECKPORT)
  503.        (working (#testing #TCPtype))
  504.        (set __res (run (cat "sys:rexxc/rx test" #TCPtype ".rexx 0")))
  505.        (user 1) (message (#stoptcpip-prompt) (help #stoptcpip-help)) (user _user-level)
  506.      ))   )
  507.      (if (<> __do -1)
  508.      ((working (#testing #TCPtype))
  509.       (set __res (run (cat "sys:rexxc/rx test" #TCPtype ".rexx 0")))
  510.       (set __txt (getenv "_httpproxy_results"))
  511.       (if (< __res 10)
  512.           ((if (= @user-level 1)
  513.            ((message (if (= __res 0) #msg-nochange #msg-applychange) __txt (help #applychange-help))
  514.             (if (<> __res 0)
  515.             ((CHECKPORT)
  516.              (working (#testing #TCPtype))
  517.              (set __res (run (cat "sys:rexxc/rx test" #TCPtype ".rexx 15")))
  518.              (set __fil (getenv "_httpproxy_files"))
  519.              (if (<> __res 0)
  520.                  ((message (#stoptcpip-prompt) (help #stoptcpip-help))
  521.                   (CHECKPORT)
  522.                   (working (#testing #TCPtype))
  523.                   (set __res (run (cat "sys:rexxc/rx test" #TCPtype ".rexx 0")))
  524.              )   )
  525.              (set __txt (getenv "_httpproxy_results"))
  526.            ))   )
  527.            ((if (= __res 0)
  528.             (message #msg-nochange __txt (help #applychange-help))
  529.             (set __res (askbool (prompt (cat #msg-applychange __txt)) (help #applychange-help) (choices #msg-ok #msg-skip)))
  530.             )
  531.             (if (<> __res 0)
  532.             ((CHECKPORT)
  533.              (if (<> __do -1)
  534.                  ((working (#testing #TCPtype))
  535.                   (set __res (run (cat "sys:rexxc/rx test" #TCPtype ".rexx 15")))
  536.                   (set __txt (getenv "_httpproxy_results"))
  537.                   (set __fil (getenv "_httpproxy_files"))
  538.                   (message #msg-applyresults __txt)
  539.                   (if (<> __res 0)
  540.                   ((message (#stoptcpip-prompt) (help #stoptcpip-help))
  541.                    (CHECKPORT)
  542.                    (working (#testing #TCPtype))
  543.                    (if (<> __do -1) (set __res (run (cat "sys:rexxc/rx test" #TCPtype ".rexx 0"))))
  544.                   )   )
  545.             )   ))   )
  546.            )   )
  547.            (if (<> __fil "") (message #msg-changedfiles __fil))
  548.  )  )    ))   )
  549.  (set __txt (getenv "_httpproxy_results"))
  550.  (transcript "=================results:================\n" __txt "=========================================")
  551.  (if (<> __res 0)
  552.      ((user 1)
  553.       (message #error-tcpipconf)
  554.       (user _user-level)
  555.       (if (= @user-level 2)
  556.       (message __txt)
  557.       (abort __txt)
  558.  )   ))
  559. )
  560.  
  561. ;
  562. ; ** Configuration checks for AmiTCP/IP **
  563. ;
  564. (procedure CHECKAMITCP
  565.  (set __br "AmiTCP")
  566.  (CHECKGENERAL)
  567. )
  568.  
  569. ;
  570. ; ** Configuration checks for INet/AS225/Surfer **
  571. ;
  572. (procedure CHECKINET
  573.  (set __br "INet As225 Surfer")
  574.  (CHECKGENERAL)
  575. )
  576.  
  577. ;/*)) */
  578.  
  579. ;/*(( "Main start / TCP Type / Install Type" */
  580.  
  581. ;
  582. ; ---------- Main ----------
  583. ;
  584. ;!!!!!!!!!!!!!! Gesamtbackup
  585.  
  586. ; Check installer version
  587. (if (<= @installer-version _min-instvers) (abort #error-instvers))
  588.  
  589. ; show guide file on first startup (per session)
  590. (if (not (exists "env:_httpproxy_install_again"))
  591.     ((textfile (dest "env:_httpproxy_install_again"))
  592.      (run (cat "c:run <>nil: " _guide-viewer " Install.guide ") (safe))
  593.      (run "c:wait 2 secs")
  594. )   )
  595.  
  596. (complete 0)
  597.  
  598. (welcome #welcome)
  599.  
  600. (set _user-level @user-level)
  601. (set _proxyproxy -1)
  602. (set _proxyport  _default-proxyport)
  603. (set _numreq     16)
  604. (set _need-config 1)
  605.  
  606. (complete 5)
  607.  
  608. ;
  609. ; ** Install / Deinstall **
  610. ;
  611. (user 1)
  612. (set _doinstall (- 1 (askchoice (prompt #install-prompt) (help #install-help) (choices #install-install #install-deinstall #install-browser) (default 0))))
  613. (if (= _doinstall 0)
  614.     (message #msg-deinstall)
  615. )
  616. (user _user-level)
  617.  
  618. (if (<> _doinstall -1)                  ; <-- *long* if jump
  619.     (
  620.  
  621. ;
  622. ; ** TCP/IP Stack type check **
  623. ;
  624. ; Type: 0 = AmiTCP, 1 = INet/AS225/Surfer
  625.  (set _TCPType -1)
  626.  (if (<> (exists "AmiTCP:" (noreq)) 0)
  627.      ((set _TCPType 0)
  628.       (if (<> (exists "INet:" (noreq)) 0)
  629.       (set _TCPType -2)
  630.      ))
  631.      (if (<> (exists "INet:" (noreq)) 0)
  632.      (set _TCPType 1)
  633.  )   )
  634.  
  635. ; only in expert mode: configuration without valid value here
  636.  (if (AND (<> @user-level 2) (= _TCPType -1))
  637.      (abort #error-notcp)
  638.  )
  639.  (if (or (= @user-level 2) (= _TCPType -2))
  640.      (set _TCPType (askchoice (prompt #whichtcp-prompt) (help #whichtcp-help) (choices (cat _ch-start "AmiTCP") "INet/AS225/Surfer") (default (if (>= _TCPType 0) _TCPType 0)))))
  641.  
  642.  (select _TCPType (CONFIGAMITCP) (CONFIGINET))
  643.  (complete 10)
  644.  
  645. ;
  646. ; ** Checking configuration **
  647. ;
  648.  (user 1)
  649.  (if (= _user-level 2)
  650.      (set _config-type (askchoice (prompt #configtype-prompt) (help #configtype-help) (choices #configtype-online #configtype-both #configtype-offline #configtype-all)))
  651.      (set _config-type (askchoice (prompt #configtype-prompt) (help #configtype-help) (choices #configtype-online #configtype-both #configtype-offline)))
  652.  )
  653.  (user _user-level)
  654.  (complete 15)
  655.  
  656.  (if _doinstall
  657. ; In novice mode we will probably change the AmiTCP installation... Tell the user the fact
  658.      ((if (= @user-level 0)
  659.       ((user 1) (message #novice-prompt) (user _user-level))
  660.       )
  661.       (working (#testing #TCPType))
  662.       (select _TCPType (CHECKAMITCP) (CHECKINET))
  663.  )   )
  664.  (complete 25)
  665.  
  666. ;/*)) */
  667. ;/*(( "Binaries and Help file" */
  668.  
  669. ;!!!!!!!!!! Konfiguration auch wenn sich online state geaendert hat
  670. ;
  671. ; ** Installation of binaries and help files **
  672. ;
  673.  (set __dest (askdir (prompt #progdestdir-prompt) (help #progdestdir-help) (default @default-dest)))
  674.  (set @default-dest __dest)
  675.  
  676. ; check old version. We don't safe it in env: as it has to remain there until we *really* configured httpproxy
  677.  (if (not (exists (tackon @default-dest "_httpproxy_old_version")))
  678.      ((if (exists (tackon @default-dest "httpproxy"))
  679.      (run (cat "c:version >" (tackon @default-dest "_httpproxy_old_version ") (tackon @default-dest "httpproxy")) (prompt "") (help "") (safe))
  680.      (textfile (dest (tackon @default-dest "_httpproxy_old_version")))
  681.       )
  682. ; copy old httpresolve to old_httpresolve if not already there. The old_httpresolve will be deleted after cache conversion.
  683.       (if (AND (exists (tackon @default-dest "httpresolve")) (not (exists (tackon @default-dest "old_httpresolve"))))
  684.       (copyfiles (prompt #copyresolve-prompt) (help #copyresolve-help) (source (tackon @default-dest "httpresolve")) (dest @default-dest) (newname "old_httpresolve") (confirm))
  685.  )   ))
  686.  (run (cat "c:copy " (tackon @default-dest "_httpproxy_old_version") " env:_httpproxy_old_version"))
  687.  (set _old-version (getenv "_httpproxy_old_version"))
  688.  
  689.  
  690.  (set __delete 15)
  691.  (set __delete (select @user-level __delete
  692.                    (* __delete (askbool (prompt (cat #delete-prompt "\n\nhttpproxy#?\nhttpdelete#?\nhttpfetch#?\nhttpresolve#?")) (help #delete-help) (default 1)))
  693.                    (askoptions (prompt #delete-prompt) (help #delete-help) (choices (cat _ch-start "httpproxy#?") "httpdelete#?" "httpfetch#?" "httpresolve#?") (default __delete))
  694.  )             )
  695.  (if (in __delete 0) (run (cat "c:delete quiet " (tackon @default-dest "httpproxy#?"))))
  696.  (if (in __delete 1) (run (cat "c:delete quiet " (tackon @default-dest "httpdelete#?"))))
  697.  (if (in __delete 2) (run (cat "c:delete quiet " (tackon @default-dest "httpfetch#?"))))
  698.  (if (in __delete 3) (run (cat "c:delete quiet " (tackon @default-dest "httpresolve#?"))))
  699.  
  700.  (if _doinstall
  701.   (
  702.    (if (< _current-cpu 68020)
  703.        (set __cpu 0)
  704.        (set __cpu 1)
  705.    )
  706.    (if (= @user-level 2)
  707.        (set __cpu (askchoice (prompt #progcpu-prompt) (help "") (choices (cat _ch-start "68000") "68020") (default __cpu)))
  708.    )
  709. ;!!!!!!!!!!! noch intelligenter machen.
  710.    (set __copy (select __cpu "(httpproxy.000|httpdelete.000|httpfetch.000|httpresolve.000" "(httpproxy.020|httpdelete.020|httpfetch.000|httpresolve.000"))
  711.    (if (= @user-level 2)
  712.        (set __copy (cat __copy "|httpproxy.db"))
  713.    )
  714.    (set __copy (cat __copy ")"))
  715.    (copyfiles (prompt (#installing "Programme")) (help "") (source "bin") (dest @default-dest) (pattern __copy) (confirm))
  716. ; rename Files to their correct name now
  717.    (execute (cat "s:spat c:rename " (tackon @default-dest "httpproxy.??? ") (tackon @default-dest "httpproxy")))
  718.    (execute (cat "s:spat c:rename " (tackon @default-dest "httpdelete.??? ") (tackon @default-dest "httpdelete")))
  719.    (execute (cat "s:spat c:rename " (tackon @default-dest "httpfetch.??? ") (tackon @default-dest "httpfetch")))
  720.    (execute (cat "s:spat c:rename " (tackon @default-dest "httpresolve.??? ") (tackon @default-dest "httpresolve")))
  721.   )
  722.   (delete (tackon @default-dest "_httpproxy_old_version"))
  723.  )
  724.  (complete 30)
  725.  (set __dest (askdir (prompt #docdestdir-prompt) (help #docdestdir-help) (default _default-doc)))
  726.  (if _doinstall
  727.      (copyfiles (prompt (#installing "Documentation")) (help "") (source "") (dest __dest) (choices "httpproxy.guide") (infos) (confirm))
  728.      ((set __delete 3)
  729.       (set __delete (select @user-level __delete
  730.                     (* __delete (askbool (prompt (cat #delete-prompt "\n\nhttpproxy.guide\nhttpproxy.guide.info")) (help #delete-help) (default 1)))
  731.                     (askoptions (prompt #delete-prompt) (help #delete-help) (choices (cat _ch-start "httpproxy.guide") "httpproxy.guide.info") (default __delete))
  732.       )             )
  733.       (if (in __delete 0) (delete (tackon __dest "httpproxy.guide")))
  734.       (if (in __delete 1) (delete (tackon __dest "httpproxy.guide.info")))
  735.  )   )
  736.  (complete 35)
  737.  
  738. ;/*)) */
  739. ;/*(( "Cache directory" */
  740.  
  741. ;
  742. ; ** Setting up cache directory **
  743. ;
  744.  (set _cache_type 0)
  745. ; 0:  empty / none
  746. ; 1:  old cache type
  747. ; 2:  new cache type
  748. ; 3:  *very* old cache type
  749. ; -1: no cache dir
  750.  
  751.  (if (exists "Temp:" (noreq))
  752.      (set __cache "Temp:ProxyCache")
  753.      (set __cache "Work:ProxyCache")
  754.  )
  755.  (set __cache (askdir (prompt #cachedir-prompt) (help #cachedir-help) (default __cache) (newpath)))
  756.  (if (= (substr __cache (- (strlen __cache) 1)) ":")                  ; workaround for installer bug (no askfile default with trailing ':')
  757.      (set __cache-slash (cat __cache "/"))
  758.      (set __cache-slash __cache)
  759.  )
  760.  (working #msg-checkcache)
  761.  (if (or _doinstall (exists __cache))
  762.      ((if (exists __cache)
  763.       ((set __found 0) (foreach __cache "#?" (set __found 1)))
  764.       ((set __found 0) (makedir __cache (prompt "") (help "") (infos)))
  765.       )
  766.       (if __found
  767.       ((set _cache_type -1)
  768.        (if (exists (tackon __cache "@dirurl"))
  769.            (set _cache_type 2)
  770.            (if (or (exists (tackon __cache ".cachetable")) (exists (tackon __cache ".iscachedir")))
  771.            (set _cache_type 1)
  772.            (foreach __cache "@????????.????????" (set _cache_type 3))
  773.       )   ))   )
  774.       (if (= _cache_type -1)
  775.       (if (< @user-level 2)
  776.           (abort #error-notcache)
  777.           ((message #danger-cache)
  778.            (set _cache_type 0)
  779.       )   )   )
  780.       (if (= _cache_type 3) ((textfile (dest (tackon __cache ".iscachedir"))) (set _cache_type 1)))
  781.       (complete 40)
  782.       (if _doinstall
  783.       ((select _cache_type
  784.            (                 ; 0: new cache directory
  785.             (makedir (tackon __cache "@temp"))
  786.             (makedir (tackon __cache "@trash"))
  787.             (textfile (dest (tackon __cache "@dirurl")))
  788.             (run (cat (tackon @default-dest "httpresolve") " >" (tackon __cache "@cachever") " version"))
  789.            )(                ; 1: old cache directory
  790.             (copyfiles (source (tackon @default-dest "httpresolve")) (dest "ram:"))
  791.             (set _cache_delete (if (askbool (prompt #updatecache-prompt) (help #updatecache-help) (default 1)) (" DODELETES") ("")))
  792.             (if (= @user-level 0)
  793.             ((working #updatecache-novice)
  794.              (run (cat "sys:rexxc/rx <>nil: updateCache.rexx " __cache _cache_delete)))
  795.             (run (cat "run <nil: >con:0/0/400/100/updateCache.rexx/NOAUTO/CLOSE/WAIT/INACTIVE sys:rexxc/rx updateCache.rexx " __cache _cache_delete) (prompt (#updaterexx-prompt)) (help "") (confirm 1))
  796.             )
  797.            )(                ; 2: new cache directory
  798.             (copyfiles (source (tackon @default-dest "httpresolve")) (dest "ram:"))
  799.             (if (exists (tackon @default-dest "old_httpresolve"))
  800.             ((copyfiles (source (tackon @default-dest "old_httpresolve")) (dest "ram:"))
  801.              (set _cache_delete (if (askbool (prompt #updatecache-prompt) (help #updatecache-help) (default 1)) (" DODELETES") ("")))
  802.              (if (= @user-level 0)
  803.                  ((working #updatecache-novice)
  804.                   (run (cat "sys:rexxc/rx <>nil: updateCache.rexx " __cache _cache_delete)))
  805.                  (run (cat "run <nil: >con:0/0/400/100/updateCache.rexx/NOAUTO/CLOSE/WAIT/INACTIVE sys:rexxc/rx updateCache.rexx " __cache _cache_delete) (prompt (#updaterexx-prompt)) (help "") (confirm 1))
  806.              )
  807.              (delete (tackon @default-dest "old_httpresolve"))
  808.             )   )
  809.       ))       )
  810.       (if (askbool (prompt #deletecache-prompt) (help #deletecache-help) (default 1))
  811.           (run (cat "c:delete all quiet " __cache ".info " __cache))
  812.      ))   )
  813.      (message #msg-nocachedel)
  814.  )
  815.  (complete 50)
  816.  
  817. ;/*)) */
  818. ;/*(( "Config Check / Standard deinstallation" */
  819. ;
  820. ; ** Check whether configuration is necessary or may be skipped **
  821. ;
  822.  
  823.  (if (and (or (= _current-version _old-version) (>= _old-version "httpproxy 0.14 beta")) (= _doinstall 1))
  824.      (set _need-config (askbool (prompt #doconfig-prompt) (help #doconfig-help) (default 1)))
  825.  )
  826.  
  827.  (if _need-config
  828.      (
  829. ;
  830. ; ** Deinstall old and new httpproxy startups in standard files **
  831. ;
  832.   (working (#deinstalling #TCPType))
  833. ; when pressing 'skip' in expert mode, run returns 1. The script will return 20, when something fails.
  834.   (if (> (run (cat "sys:rexxc/rx deinstall.rexx HTTPPROXY " _default-deinstall) (prompt (#deinstallrexx _default-deinstall)) (help #deinstallrexx-help) (confirm)) 1)
  835.       (abort #error-notremoved))
  836.   (run (cat "c:list >t:_install_httpproxy_search " _pattern-deinstall " lformat \"c:search >>env:_install_httpproxy *\"%s%s*\" pattern httpproxy quiet\"") (safe))
  837.   (run "c:delete env:_install_httpproxy quiet" (safe))
  838.   (execute "t:_install_httpproxy_search")
  839.   (if (<> (getenv "_install_httpproxy") "")
  840.       (if (= @user-level 0)
  841.       (abort #error-update #msg-infile (getenv "_install_httpproxy"))
  842.       (message #update-prompt #msg-infile (getenv "_install_httpproxy") (help #update-help ))
  843.   )   )
  844.   (complete 55)
  845.  
  846. ;/*)) */
  847. ;/*(( "Startup File" */
  848. ;
  849. ; ** Removing and Inserting httpproxy (and httpdelete) startup command **
  850. ;
  851. ;!!!!!!!!!!!!!! 'online' option -> expoptions
  852.  
  853.   (set _again 1)
  854.  
  855.   (while _again
  856.    (select _config-type
  857.     ((set __dest _default-startup)     ; config-type "online"
  858.      (set __prompt #startup-prompt)
  859.      (set _again 0)
  860.      (set __proxyopts 3)
  861.     )
  862.     (select _again 0                   ; config-type "both"
  863.      ((set __dest _default-offline)
  864.       (set __prompt #offline-prompt)
  865.       (set __proxyopts 2)
  866.       (set _again 2)
  867.      )
  868.      ((set __dest _default-online)
  869.       (set __prompt #online-prompt)
  870.       (set __proxyopts 3)
  871.       (set _again 0)
  872.      )
  873.     )
  874.     ((set __dest _default-startup)     ; config-type "offline"
  875.      (set __prompt #startup-prompt)
  876.      (set _again 0)
  877.      (set __proxyopts 2)
  878.     )
  879.     ((select _again 0                  ; config-type "all"
  880.       (set __dest _default-startup)
  881.       (set __dest _default-dir)
  882.      )
  883.      (set __prompt (cat #startup-prompt #startup-done))
  884.      (set _again 2)
  885.      (set __proxyopts 2)
  886.    ))
  887.  
  888.  
  889.    (if (<> (exists __dest) 1)
  890.        (user 1))
  891.    (set __dest (askfile (prompt __prompt) (help #startup-help) (default __dest)))
  892.    (if (= (exists __dest) 0)
  893.        (set __dest (askfile (prompt #notexfile-prompt) (help #startup-help) (default __dest))))
  894.    (user _user-level)
  895.    (if (= (exists __dest) 0)
  896.        (textfile (dest __dest)))
  897.    (set __expopts 0)
  898.    (set __httpdelopts 4)
  899.    (if (= (exists __dest) 2)
  900.        (if (= _config-type 3) (set _again 0) (set _again 1))          ; ok, we're done
  901.        (
  902.  
  903.     (working (#deinstalling #TCPType))
  904.     (if (> (run (cat "sys:rexxc/rx deinstall.rexx HTTPPROXY " __dest) (prompt (#deinstallrexx __dest)) (help #deinstallrexx-help) (confirm)) 1)
  905.        (abort #error-notremoved))
  906.     (run "c:search >env:_install_httpproxy " __dest " pattern httpproxy" (safe))
  907.     (if (<> (getenv "_install_httpproxy") "")
  908.     (if (= @user-level 0)
  909.         (abort #error-update #msg-infile __dest)
  910.         (message #update-prompt #msg-infile __dest (help #update-help ))
  911.     )   )
  912.     (if _doinstall
  913.     (
  914.      (set __httpdel (askbool (prompt #httpdel-prompt) (help #httpdel-help) (default 1)))
  915.      (set __proxyopts (askoptions (prompt #proxyopts-prompt) (help #proxyopts-help)
  916.                (choices (cat _ch-start "Online") "Get" "Unread" "Proxy" "Log" "Expire") (default __proxyopts)))
  917.      (if (in __proxyopts 0)
  918.          (set __opts_offline "")
  919.          (set __opts_offline " offline"))
  920.      (if (in __proxyopts 1)
  921.          (set __opts_get     " get")
  922.          (set __opts_get     ""))
  923.      (if (in __proxyopts 2)
  924.          (set __opts_unread  " unread")
  925.          (set __opts_unread  ""))
  926.      (if (in __proxyopts 3)
  927.          ((set __opts_proxy (cat " proxy " (askstring (prompt #proxyproxy-prompt) (help #proxyproxy-help) (default "proxy.my.domain 80"))))
  928.           (set _proxyproxy 1))
  929.          ((set __opts_proxy "")
  930.           (set _proxyproxy 0)))
  931.      (if (in __proxyopts 4)
  932.          (set __opts_log   (cat " log " (askfile (prompt #proxylog-prompt) (help #proxylog-help) (default (tackon __cache-slash ".httpproxy-log")))))
  933.          (set __opts_log ""))
  934.      (if (in __proxyopts 5)
  935.          (set __opts_expire (cat " expire " (* 86400 (asknumber (prompt #expiretime-prompt) (help #expiretime-help) (range 1 355) (default 7)))))
  936.          (set __opts_port ""))
  937.  
  938. ; !!!!!!!!!!!! Entfernen alter Configs fehlt noch (auch in Install.guide entfernen)
  939. ; !!!!!!!!!!!! Konfig von startup zu startup merken
  940.  
  941.      (if (= @user-level 2)
  942.          (set __expopts (askoptions (prompt #expopts-prompt) (help #expopts-help)
  943.                  (choices (cat _ch-start "Port") "NumReq" "MinNumReq" "Reload" "KeepBad" "ProxyLocal" "NoQueue" (if (= _proxyproxy 1) "NoHttpProxyProxy" "")) (default __expopts))))
  944.      (if (in __expopts 0)
  945.          ((set _proxyport (asknumber (prompt #proxyport-prompt) (help #proxyport-help) (range 1 65535) (default _proxyport)))
  946.           (set __opts_port (cat " port " _proxyport)))
  947.          (set __opts_port ""))
  948.      (if (in __expopts 1)
  949.          ((set _numreq (asknumber (prompt #proxynumreq-prompt) (help #proxynumreq-help) (range 1 255) (default 16)))
  950.           (set __opts_numreq (cat " numreq " _numreq)))
  951.          (set __opts_port ""))
  952.      (if (in __expopts 2)
  953.          (set __opts_minnumreq (cat " minnumreq " (asknumber (prompt #proxyminnumreq-prompt) (help #proxyminnumreq-help) (range 1 _numreq) (default 12))))
  954.          (set __opts_port ""))
  955.      (if (in __expopts 3)
  956.          (set __opts_reload (cat " reload " (asknumber (prompt #reloadtime-prompt) (help #reloadtime-help) (range 1 100) (default 10))))
  957.          (set __opts_port ""))
  958.      (if (in __expopts 4)
  959.          (set __opts_keepbad " keepbad")
  960.          (set __opts_keepbad ""))
  961.      (if (in __expopts 5)
  962.          (set __opts_prlocal " proxylocal")
  963.          (set __opts_prlocal ""))
  964.      (if (in __expopts 6)
  965.          (set __opts_noqueue " noqueue")
  966.          (set __opts_noqueue ""))
  967.      (if (in __expopts 7)
  968.          (set __opts_nohpr   " nohttpproxyproxy")
  969.          (set __opts_nohpr   ""))
  970.  
  971.      (if (> (set __type (run "sys:rexxc/rx checkrexx.rexx " __dest (safe))) 1) (abort))
  972.      (set __text (cat (select __type "/*BEGIN HTTPPROXY*/\nADDRESS COMMAND\n'" ";BEGIN HTTPPROXY\n")
  973.               "run <>nil: " (tackon @default-dest "httpproxy") " cache " __cache
  974.               __opts_offline __opts_get __opts_unread __opts_proxy __opts_log __opts_expire
  975.               __opts_port __opts_numreq __opts_minnumreq __opts_reload __opts_keepbad __opts_prlocal __opts_noqueue __opts_nohpr
  976.      )           )
  977.  
  978.      (if __httpdel
  979.          ((set __httpdelopts (askoptions (prompt #httpdelopts-prompt) (help #httpdelopts-help) (choices (cat _ch-start "Log") "Delay 5       (Slow)" "Priority -1   (background)" "Time") (default __httpdelopts)))
  980.           (if (in __httpdelopts 0)
  981.           (set __del_log   (cat " log " (askfile (prompt #httpdellog-prompt) (help #httpdellog-help) (default (tackon __cache-slash ".httpdelete-log")))))
  982.           (set __del_log ""))
  983.           (if (in __httpdelopts 1)
  984.           (set __del_delay " delay 5")
  985.           (set __del_delay ""))
  986.           (if (in __httpdelopts 2)
  987.           (set __del_back  " priority -1")
  988.           (set __del_back  ""))
  989.           (if (in __httpdelopts 3)
  990.           (set __del_time (cat " time " (* 86400 (asknumber (prompt #httpdeltime-prompt) (help #httpdeltime-help) (range 1 710) (default 60)))))
  991.           (set __del_time ""))
  992.  
  993.           (set __text (cat __text (select __type "'\n'" "\n") "run <>nil: " (tackon @default-dest "httpdelete") " cachedir " __cache __del_log __del_delay __del_back __del_time))
  994.          )
  995.      )
  996.  
  997.      (set __text (cat __text (select __type "'\nADDRESS\n/*END HTTPPROXY*/\n" "\n;END HTTPPROXY\n")))
  998.  
  999.      (run (cat "c:delete " __dest ".backup"))
  1000.      (rename __dest (cat __dest ".backup") (prompt #backup-prompt) (help "") (confirm))
  1001.      (textfile (prompt (#addentry __dest __text)) (help "") (dest __dest) (include (cat __dest ".backup")) (append __text) (confirm 1))
  1002.      (if (not (exists __dest))
  1003.          (rename (cat __dest ".backup") __dest)     ;rename back when skipped
  1004.      )
  1005.      (protect __dest "+s")
  1006.     )   )
  1007.  
  1008.       )               ; (= (exists __dest) 2)
  1009.    )
  1010.   )                   ; (while _again)
  1011.   (complete 70)
  1012.  
  1013. ;/*)) */
  1014. ;/*(( "Dialin / Hangup" */
  1015.  
  1016.   (if (>= _config-type 2)
  1017.   (
  1018. ; Ask for proxy port when not yet done (skipped)...
  1019. ; _proxyproxy is -1 when nothing is specified yet... (hacky)
  1020.    (if (= _proxyproxy -1)
  1021.        ((if (= @user-level 2)
  1022.         (if (askbool (prompt #haveport-prompt) (help #haveport-help) (default _proxyport))
  1023.         (set _proxyport (asknumber (prompt #proxyport-prompt) (help #proxyport-help) (range 1 65535) (default _proxyport)))
  1024.     )   )
  1025.    )   )
  1026.    (if (= _proxyport _default-proxyport)
  1027.        (set _fetchfrom "")
  1028.        (set _fetchfrom (cat " from localhost:" _proxyport))
  1029.    )
  1030. ;
  1031. ; ** Inserting httpfetch commands **
  1032. ;
  1033. ; ** ONLINE **
  1034. ;
  1035.    (set _again 1)
  1036.    (while _again
  1037.     (if (= _config-type 3)
  1038.     ((set __prompt (cat #dialin-prompt #startup-done))
  1039.      (if (= _again 1) ((set _again 2) (set __dest _default-dialin)) (set __dest _default-dir))
  1040.     )
  1041.     ((set __prompt #dialin-prompt) (set _again 0) (set __dest _default-dialin))
  1042.     )
  1043.     (if (<> (exists _default-dialin) 1)
  1044.     (user 1))
  1045.     (set __dest (askfile (prompt __prompt) (help #dialin-help) (default __dest)))
  1046.     (if (= (exists __dest) 0)
  1047.     (set __dest (askfile (prompt #notexfile-prompt) (help #dialin-help) (default __dest))))
  1048.     (user _user-level)
  1049.     (if (= (exists __dest) 0)
  1050.     (textfile (dest __dest)))
  1051.     (if (= (exists __dest) 2)
  1052.     (if (= _config-type 3) (set _again 0) (set _again 1))          ; ok, we're done
  1053.     (
  1054.  
  1055.      (working (#deinstalling #TCPType))
  1056.      (if (> (run (cat "sys:rexxc/rx deinstall.rexx HTTPPROXY " __dest) (prompt (#deinstallrexx __dest)) (help #deinstallrexx-help) (confirm)) 1)
  1057.     (abort #error-notremoved))
  1058.      (run "c:search >env:_install_httpproxy " __dest " pattern httpproxy" (safe))
  1059.      (run "c:search >>env:_install_httpproxy " __dest " pattern httpfetch" (safe))
  1060.      (if (<> (getenv "_install_httpproxy") "")
  1061.      (if (= @user-level 0)
  1062.          (abort #error-update #msg-infile __dest)
  1063.          (message #update-prompt #msg-infile __dest (help #update-help))
  1064.      )   )
  1065.      (if _doinstall
  1066.      (
  1067.       (if (> (set __type (run "sys:rexxc/rx checkrexx.rexx " __dest (safe))) 1) (abort))
  1068.       (set __text (cat (select __type "/*BEGIN HTTPPROXY*/\nADDRESS COMMAND\n'" ";BEGIN HTTPPROXY\n")
  1069.                "run <>nil: " (tackon @default-dest "httpfetch") " service co1 quiet retries 10" _fetchfrom
  1070.                (select __type "'\nADDRESS\n/*END HTTPPROXY*/\n" "\n;END HTTPPROXY\n")
  1071.       )           )
  1072.       (run "c:delete " (cat __dest ".backup"))
  1073.       (rename __dest (cat __dest ".backup") (prompt #backup-prompt) (help "") (confirm))
  1074.       (textfile (prompt (#addentry __dest __text)) (help "") (dest __dest) (include (cat __dest ".backup")) (append __text) (confirm 1))
  1075.       (if (not (exists __dest))
  1076.           (rename (cat __dest ".backup") __dest))    ;rename back when skipped
  1077.       (protect __dest "+s")
  1078.      )   )
  1079.     )             ; (= (exists __dest) 2)
  1080.     )
  1081.    )                  ; (while _again)
  1082.    (complete 75)
  1083.  
  1084. ;
  1085. ; ** OFFLINE **
  1086. ;
  1087. ;!!!!!!!!!! bei scripten '.key' etc. ueberspringen
  1088.    (set _again 1)
  1089.    (while _again
  1090.     (if (= _config-type 3)
  1091.     ((set __prompt (cat #hangup-prompt #startup-done))
  1092.      (if (= _again 1) ((set _again 2) (set __dest _default-hangup)) (set __dest _default-dir))
  1093.     )
  1094.     ((set __prompt #hangup-prompt) (set _again 0) (set __dest _default-hangup))
  1095.     )
  1096.     (if (<> (exists _default-hangup) 1)
  1097.     (user 1))
  1098.     (set __dest (askfile (prompt __prompt) (help #hangup-help) (default __dest)))
  1099.     (if (= (exists __dest) 0)
  1100.     (set __dest (askfile (prompt #notexfile-prompt) (help #hangup-help) (default __dest))))
  1101.     (user _user-level)
  1102.     (if (= (exists __dest) 0)
  1103.     (textfile (dest __dest)))
  1104.     (if (= (exists __dest) 2)
  1105.     (if (= _config-type 3) (set _again 0) (set _again 1))          ; ok, we're done
  1106.     (
  1107.  
  1108.      (working (#deinstalling #TCPType))
  1109.      (if (> (run (cat "sys:rexxc/rx deinstall.rexx HTTPPROXY " __dest) (prompt (#deinstallrexx __dest)) (help #deinstallrexx-help) (confirm)) 1)
  1110.     (abort #error-notremoved))
  1111.      (run "c:search >env:_install_httpproxy " __dest " pattern httpproxy" (safe))
  1112.      (run "c:search >>env:_install_httpproxy " __dest " pattern httpfetch" (safe))
  1113.      (if (<> (getenv "_install_httpproxy") "")
  1114.      (if (= @user-level 0)
  1115.          (abort #error-update #msg-infile __dest)
  1116.          (message #update-prompt #msg-infile __dest (help #update-help))
  1117.      )   )
  1118.      (if _doinstall
  1119.      (
  1120.       (if (> (set __type (run "sys:rexxc/rx checkrexx.rexx " __dest (safe))) 1) (abort))
  1121.       (set __text (cat (select __type "/*BEGIN HTTPPROXY*/\nADDRESS COMMAND\n'" ";BEGIN HTTPPROXY\n")
  1122.                "run <>nil: " (tackon @default-dest "httpfetch") " service co0 quiet" _fetchfrom
  1123.                (select __type "'\nADDRESS\n/*END HTTPPROXY*/\n" "\n;END HTTPPROXY\n")
  1124.       )           )
  1125.       (run "c:delete " (cat __dest ".backup"))
  1126.       (rename __dest (cat __dest ".backup") (prompt #backup-prompt) (help "") (confirm))
  1127.       (textfile (prompt (#addentry __dest __text)) (help "") (dest __dest) (append __text) (include (cat __dest ".backup")) (confirm 1))
  1128.       (if (not (exists __dest))
  1129.           (rename (cat __dest ".backup") __dest))    ;rename back when skipped
  1130.       (protect __dest "+s")
  1131.      )   )
  1132.  
  1133.     )             ; (= (exists __dest) 2)
  1134.     )
  1135.    )                  ; (while _again)
  1136.  
  1137.      )              ; _config-type
  1138.   )
  1139.     )               ; <-- _need-config
  1140.  )
  1141.  
  1142. ; remove old version check file
  1143.  (if (exists (tackon @default-dest "_httpproxy_old_version"))
  1144.      (run (cat "c:delete " (tackon @default-dest "_httpproxy_old_version")) (safe)))
  1145.  (complete 80)
  1146.  
  1147. ;/*)) */
  1148. ;/*(( "Browser Config" */
  1149. ;!!!!!!!!!!!!!! variablen besser setzten und löschen...
  1150.  
  1151.    )            ; <-- *long* if jump
  1152. )
  1153.  
  1154. (if _need-config      ; automatically set when _doinstall == 1
  1155.     (
  1156.  
  1157. ; Ask for proxyproxy mode when not installing...
  1158.  (if (= _proxyproxy -1)
  1159.      ((set _proxyproxy (askbool (prompt #haveproxy-prompt) (help #haveproxy-help) (default 0)))
  1160.       (if (= @user-level 2)
  1161.       (if (askbool (prompt #haveport-prompt) (help #haveport-help) (default _proxyport))
  1162.           (set _proxyport (asknumber (prompt #proxyport-prompt) (help #proxyport-help) (range 1 65535) (default _proxyport)))
  1163.       )   )
  1164.       (if (= _doinstall -1) (complete 20))
  1165.  )   )
  1166.  
  1167.  
  1168. ;
  1169. ; ** Browser proxy configuration **
  1170. ;
  1171.  (if _doinstall
  1172.      ((set _proxy-url (cat "http://localhost:" _proxyport "/")) (set _setenv "setenv") (set _proxy-conf (cat "localhost\", \"" _proxyport)))
  1173.      ((set _proxy-url "") (set _setenv "unsetenv") (set _proxy-conf "\", \""))
  1174.  )
  1175.  (if (= @user-level 0) (user 1))
  1176.  (set __browser (askoptions (prompt #browser-prompt) (help #browser-help) (choices (cat _ch-start "AMosaic") "AWeb" "Emacs WWW" "IBrowse" "Lynx" "Mindwalker" "Voyager" "Weblink") (default 0)))
  1177.  (if (= _doinstall -1) (complete 40) (complete 85))
  1178.  
  1179. ; ** AMosaic (and IBrowse, 1.) **
  1180.  (if (in __browser 0 3)
  1181.      ((run (cat _setenv " http_proxy " _proxy-url))
  1182.       (if _proxyproxy
  1183.       ((run (cat _setenv " ftp_proxy " _proxy-url))
  1184.        (run (cat _setenv " wais_proxy " _proxy-url))
  1185.        (run (cat _setenv " gopher_proxy " _proxy-url))
  1186.       )   )
  1187.       (user _user-level)
  1188.       (if (in __browser 0)
  1189.       (if _doinstall
  1190.           (run "c:copy env:#?_proxy envarc:" (prompt (#saveconfig "AMosaic")) (help #saveconfig-help) (confirm 1))
  1191.           (run "c:delete envarc:#?_proxy" (prompt (#saveconfig "AMosaic")) (help #saveconfig-help) (confirm 1))
  1192.       )   )
  1193.       (if (= @user-level 0) (user 1))
  1194.  )   )
  1195.  (if (= _doinstall -1) (complete 60) (complete 90))
  1196. ; ** AWeb **
  1197.  (if (in __browser 1)
  1198.      ((set __br "AWeb")
  1199.       (CHECKBROWSER)
  1200.       (if _proxyproxy
  1201.       (message (#menupageproxy "Settings / Change Settings..." "Network 2: Proxy" _proxy-url "HTTP, FTP, GOPHER"))
  1202.       (message (#menupageproxy "Settings / Change Settings..." "Network 2: Proxy" _proxy-url "HTTP"))
  1203.  )   ))
  1204. ; ** Emacs WWW **
  1205.  (if (in __browser 2)
  1206.      (message (#unknownconfig "Emacs WWW" _proxy-url))
  1207.  )
  1208. ; ** IBrowse, 2. **
  1209.  (if (in __browser 3)
  1210.      ((set __br "IBrowse")
  1211.       (CHECKBROWSER)
  1212.       (if (not (askbool (prompt #ibrowseconfig-prompt) (help #ibrowseconfig-help)))
  1213.       (if _proxyproxy
  1214.           (message (#menupageproxy "Preferences / Network..." "Proxy" _proxy-url "HTTP, FTP, GOPHER"))
  1215.           (message (#menupageproxy "Preferences / Network..." "Proxy" _proxy-url "HTTP"))
  1216.       )   )
  1217.  )   )
  1218.  (if (= _doinstall -1) (complete 80) (complete 95))
  1219. ; ** Lynx **
  1220.  (if (in __browser 4)
  1221.      ((set __dest (askfile (prompt #lynxfile-prompt) (help "") (default "s:/lynx.cfg")))      ; bug in installer (s:lynx.cfg won't work...)
  1222.       (run "c:delete " (cat __dest ".backup"))
  1223.       (rename __dest (cat __dest ".backup") (prompt #backup-prompt) (help "") (confirm))
  1224.       (set __text (cat "http_proxy:" _proxy-url "\n"))
  1225.       (if _proxyproxy
  1226.       (set __text (cat __text "ftp_proxy:" _proxy-url "\ngopher_proxy:" _proxy-url "\nwais_proxy:" _proxy-url "\n")))
  1227.       (textfile (prompt (#addentry __dest __text)) (help "") (dest __dest) (include (cat __dest ".backup")) (append __text) (confirm 1))
  1228.       (if (not (exists __dest))
  1229.       (rename (cat __dest ".backup") __dest)     ;rename back when skipped
  1230.  )   ))
  1231. ; ** Mindwalker **
  1232.  (if (in __browser 5)
  1233.      (message (#unknownconfig "Mindwalker" _proxy-url))
  1234.  )
  1235. ; ** Voyager **
  1236.  (if (in __browser 6)
  1237.      ((if (not (exists "env:Voyager"))    (makedir "env:Voyager"))
  1238.       (if (not (exists "envarc:Voyager")) (makedir "envarc:Voyager"))
  1239.       (run (cat _setenv " Voyager/WWWPROXY localhost"))
  1240.       (run (cat _setenv " Voyager/WWWPROXYPORT " _proxyport))
  1241. ; no ftp, wais, gopher so far :-(
  1242.       (user _user-level)
  1243.       (if _doinstall
  1244.       (run "c:copy env:Voyager/WWWPROXY#? envarc:Voyager/" (prompt (#saveconfig "Voyager")) (help #saveconfig-help) (confirm 1))
  1245.       (run "c:delete envarc:Voyager/WWWPROXY#?" (prompt (#saveconfig "Voyager")) (help #saveconfig-help) (confirm 1))
  1246.       )
  1247.       (if (= @user-level 0) (user 1))
  1248.       (set __br "Voyager Mindwalker")
  1249.       (set __prompt (#startbrowser "Voyager"))
  1250.       (set __help   #interrupt-help)
  1251.       (CHECKPORT)
  1252.       (if _proxyproxy
  1253.       (message (#menupageproxy "Settings / Network..." "Proxies" _proxy-conf "HTTP, FTP, Gopher, WAIS") voyagerconfig-prompt)
  1254.       (message (#menupageproxy "Settings / Network..." "Proxies" _proxy-conf "HTTP") voyagerconfig-prompt)
  1255.  )   ))
  1256. ; ** Weblink **
  1257.  (if (in __browser 7)
  1258.      (message (#unknownconfig "Weblink" _proxy-url))
  1259.  )
  1260.  
  1261.    )          ; <-- _need-config
  1262. )
  1263.  
  1264. (complete 100)
  1265.  
  1266. (CleanUp)
  1267. (exit)
  1268.  
  1269. ;/*)) */
  1270. ; *** EOF ***
  1271.